perm filename META[W86,JMC] blob sn#807062 filedate 1986-01-22 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	meta[w86,jmc]		Notes on a metaprolog
C00005 ENDMK
C⊗;
meta[w86,jmc]		Notes on a metaprolog

The object of this metaprolog idea is to control reasoning better.
It is an elaboration of the introspective prolog suggested in my
1982 notebooks and implemented (in some way) by Peter Szeredi.

I should reread the paper by Kowalski and Bowen.

The entities of metaprolog include

partial assignments of values to variables
(actually in accordance with the unification philosophy of prolog they
should be pairings of variables and terms where the terms can have
variables in them).

sets of literals and sets of sets

of course in order to reason about such things metavariables are
necessary.

General metareasoning has the following open¬ended character.  There
Reasoning about the methods used is often useful, but it isn't
guaranteed to be conclusive, i.e. a definite answer about how to improve
one's methods isn't guaranteed to appear.  Therefore, if one has
a definite problem to solve, metareasoning about it has to be cut
off, and one has to make do with the improvements one has found.
This suggests that we need to discover some subcases in which
the metareasoning is part of an algorithm and will terminate.
For example, the metareasoning leading to the discovery of the
postponement and Kempe heuristics for map coloring has the above
indefinite character.  It is unlikely that there is a general
method of attacking combinatorial problems that could be put
into a program that would come up with these heuristics.  On
the other hand, the application of postponement and Kempe
to particular maps can still be regarded as metareasoning in
so far as it involves re-arrangement of a program and modification
of the search for a solution.  These are definite procedures.
Therefore, we are interested in identifying the subcases of
metareasoning that have this definite character.